To determine whether a website contains such kinds of vulnerabilities as CGI vulnerability, SQL injection vulnerability, cross-site scripting vulnerability, etc., there is a need to perform a vulnerability scanning for the website from outside the website, namely, remotely, to confirm whether the website contains such vulnerabilities.
Nowadays, a large number of websites on the internet are constructed based on some known web applications. For example, the forum system of a website may be constructed based on known web applications such as Discuz!, phpwind or Dvbbs, etc.; and the blog system of a website may be constructed based on a web application such as WordPress, etc. Such known web applications are already found to have contained some known CGI vulnerabilities. For example, the Discuz! forum contained the bypass global variable defense vulnerability, the manyou plug-in of the Discuz! forum contained the SQL injection vulnerability, and WordPress contained the bypass password protection vulnerability, and so on. Since the application range of the known web applications is very wide, so is the vulnerability study for these web applications, but methods for fixing the vulnerabilities of these known web applications can occur in time. Therefore, these known web applications have gradually become comparatively mature products. The possibility that there exist other vulnerabilities except for those disclosed on the network becomes very low.
Conventional methods for scanning website vulnerability are to traverse in turn all the pages on a website, call a crawler program for every page to obtain the page content to perform an analysis, and perform a comprehensive vulnerability scanning for the pages.
When a conventional website vulnerability scanning method is used to scan those websites constructed based on a known web application, the possibility of scanning out vulnerability is comparatively low. Instead, it will consume a lot of time and bandwidth, and even cause a false positive of vulnerability because of the problem of the scanning program, which gives rise to a customer's unnecessary worry.
Therefore, there is a need for a new website scanning apparatus and method, which may take into account a known web application used by a website and reduce the unnecessary vulnerability scanning process, thereby saving the scanning time and the network bandwidth being occupied to increase the efficiency of the website scanning.